package cn.com.nes.site.entity.vo.design;

import cn.com.nes.site.entity.dto.HeatPumpResDto;

import java.util.Arrays;
import java.util.List;


public class HeatingSysVo {

    private Integer pageid;
    private Integer pagesize;
    /**
     * 项目地点
     */
    private String address;
    /**
     * 建筑类型
     */
    private String buildingType;
    /**
     * 建筑面积
     */
    private Double buildingArea;
    /**
     * 热泵型号
     */
    private String heatPumpModel;
    /**
     * 铭牌制热量
     */
    private Double heatingCapacity;
    /**
     * 单价
     */
    private Integer price;
    /**
     * 制热额定功率
     */
    private Double zredgl;
    /**
     * 供暖末端
     */
    private String heatingEnd;
    /**
     * 供回水温差
     */
    private Integer temperatureDifference;
    /**
     * 供暖费（元/㎡）
     */
    private Double heatingCharges;
    /**
     * 补贴（元/㎡）
     */
    private Double subsidy;
    /**
     * 管理费（元/㎡）
     */
    private Double managementFee;
    /**
     * 采暖期（天数）
     */
    private Integer heatingPeriod;
    /**
     * 数据库load存储字段
     */
    private String field;
    /**
     * 峰电电费
     */
    private Double fdjg;
    /**
     * 谷电电费
     */
    private Double gdjg;
    /**
     * 平电电费
     */
    private Double pdjg;
    /**
     * 尖电电费
     */
    private Double jdjg;
    /**
     * 峰电所在时段
     */
    private List fdsj;
    private String fdsjStr;
    /**
     * 谷电所在时段
     */
    private List gdsj;
    private String gdsjStr;
    /**
     * 平电所在时段
     */
    private List pdsj;
    private String pdsjStr;
    /**
     * 尖电所在时段
     */
    private List jdsj;
    private String jdsjStr;
    private String xzqhdm;
    /**
     * 公司id
     */
    private String companyId;
    /**
     * 电占比  峰电、谷电2、平电3、尖电4
     */
    private Integer fdRatio;
    private Integer gdRatio;
    private Integer pdRatio;
    private Integer jdRatio;
    /**
     * 单位负荷指标
     */
    private Double unitLoadIndex;
    /**
     * 标准热负荷
     */
    private Double standardHeatLoad;
    /**
     * 空气源热泵系统热负荷
     */
    private Double sysHeatLoad;
    /**
     * 热泵台数
     */
    private Integer towerNum;
    /**
     * 总体方案报价
     */
    private Double totalPrice;
    /**
     * 流量
     */
    private Double flow;
    /**
     * 对应管径
     */
    private String pipeDiameter;
    /**
     * 杨程
     */
    private Double lift;
    /**
     * 水泵实际功率   ☞   实际功率
     */
    private Double actualPower;
    /**
     * 热泵功率     ☞     台数*zredgl(制热额定功率)
     */
    private Double heatPower;
    /**
     * 配电功率     ☞   配电功率
     */
    private Double electricPower;
    /**
     * 预计收入
     */
    private Double projectedIncome;
    /**
     * 预计支出
     */
    private Double estimatedSpending;
    private String id = null;
    /**
     * 热泵厂家
     */
    private String heatPumpManufacturers;

    public HeatingSysVo() {
    }

    public HeatingSysVo(HeatPumpResDto dto, CalculateCostVo vo) {
        this.address = vo.getAddress();
        this.buildingType = vo.getBuildingType();
        this.buildingArea = vo.getBuildingArea();
        this.heatPumpModel = vo.getHeatPumpModel();
        this.heatingCapacity = vo.getHeatingCapacity();
        this.price = vo.getPrice();
        this.zredgl = vo.getZredgl();
        this.heatingEnd = vo.getHeatingEnd();
        this.temperatureDifference = vo.getTemperatureDifference();
        this.heatingCharges = vo.getHeatingCharges();
        this.subsidy = vo.getSubsidy();
        this.managementFee = vo.getManagementFee();
        this.heatingPeriod = vo.getHeatingPeriod();
        this.fdjg = vo.getFdjg();
        this.gdjg = vo.getGdjg();
        this.pdjg = vo.getPdjg();
        this.jdjg = vo.getJdjg();
        this.fdsj = vo.getFdsj();
        this.gdsj = vo.getGdsj();
        this.pdsj = vo.getPdsj();
        this.jdsj = vo.getJdsj();
        this.xzqhdm = vo.getXzqhdm();
        this.companyId = vo.getCompanyId();
        this.fdRatio = vo.getFdRatio();
        this.gdRatio = vo.getGdRatio();
        this.pdRatio = vo.getPdRatio();
        this.jdRatio = vo.getJdRatio();
        this.unitLoadIndex = dto.getUnitLoadIndex();
        this.standardHeatLoad = dto.getStandardHeatLoad();
        this.sysHeatLoad = dto.getSysHeatLoad();
        this.towerNum = dto.getTowerNum();
        this.totalPrice = dto.getTotalPrice();
        this.flow = dto.getFlow();
        this.pipeDiameter = dto.getPipeDiameter();
        this.lift = dto.getLift();
        this.actualPower = dto.getActualPower();
        this.heatPower = dto.getHeatPower();
        this.electricPower = dto.getElectricPower();
        this.projectedIncome = dto.getProjectedIncome();
        this.estimatedSpending = dto.getEstimatedSpending();
        this.heatPumpManufacturers = vo.getHeatPumpManufacturers();
        this.fdsjStr = this.fdsj.toString();
        this.gdsjStr = this.gdsj.toString();
        this.pdsjStr = this.pdsj.toString();
        this.jdsjStr = this.jdsj.toString();
    }

    public Integer getPageid() {
        return pageid;
    }

    public void setPageid(Integer pageid) {
        this.pageid = pageid;
    }

    public Integer getPagesize() {
        return pagesize;
    }

    public void setPagesize(Integer pagesize) {
        this.pagesize = pagesize;
    }

    public String getAddress() {
        return address;
    }

    public void setAddress(String address) {
        this.address = address;
    }

    public String getBuildingType() {
        return buildingType;
    }

    public void setBuildingType(String buildingType) {
        this.buildingType = buildingType;
    }

    public Double getBuildingArea() {
        return buildingArea;
    }

    public void setBuildingArea(Double buildingArea) {
        this.buildingArea = buildingArea;
    }

    public String getHeatPumpModel() {
        return heatPumpModel;
    }

    public void setHeatPumpModel(String heatPumpModel) {
        this.heatPumpModel = heatPumpModel;
    }

    public Double getHeatingCapacity() {
        return heatingCapacity;
    }

    public void setHeatingCapacity(Double heatingCapacity) {
        this.heatingCapacity = heatingCapacity;
    }

    public Integer getPrice() {
        return price;
    }

    public void setPrice(Integer price) {
        this.price = price;
    }

    public Double getZredgl() {
        return zredgl;
    }

    public void setZredgl(Double zredgl) {
        this.zredgl = zredgl;
    }

    public String getHeatingEnd() {
        return heatingEnd;
    }

    public void setHeatingEnd(String heatingEnd) {
        this.heatingEnd = heatingEnd;
    }

    public Integer getTemperatureDifference() {
        return temperatureDifference;
    }

    public void setTemperatureDifference(Integer temperatureDifference) {
        this.temperatureDifference = temperatureDifference;
    }

    public Double getHeatingCharges() {
        return heatingCharges;
    }

    public void setHeatingCharges(Double heatingCharges) {
        this.heatingCharges = heatingCharges;
    }

    public Double getSubsidy() {
        return subsidy;
    }

    public void setSubsidy(Double subsidy) {
        this.subsidy = subsidy;
    }

    public Double getManagementFee() {
        return managementFee;
    }

    public void setManagementFee(Double managementFee) {
        this.managementFee = managementFee;
    }

    public Integer getHeatingPeriod() {
        return heatingPeriod;
    }

    public void setHeatingPeriod(Integer heatingPeriod) {
        this.heatingPeriod = heatingPeriod;
    }

    public String getField() {
        return field;
    }

    public void setField(String field) {
        this.field = field;
    }

    public Double getFdjg() {
        return fdjg;
    }

    public void setFdjg(Double fdjg) {
        this.fdjg = fdjg;
    }

    public Double getGdjg() {
        return gdjg;
    }

    public void setGdjg(Double gdjg) {
        this.gdjg = gdjg;
    }

    public Double getPdjg() {
        return pdjg;
    }

    public void setPdjg(Double pdjg) {
        this.pdjg = pdjg;
    }

    public Double getJdjg() {
        return jdjg;
    }

    public void setJdjg(Double jdjg) {
        this.jdjg = jdjg;
    }

    public List getFdsj() {
        return fdsj;
    }

    public void setFdsj(List fdsj) {
        this.fdsj = fdsj;
    }

    public List getGdsj() {
        return gdsj;
    }

    public void setGdsj(List gdsj) {
        this.gdsj = gdsj;
    }

    public List getPdsj() {
        return pdsj;
    }

    public void setPdsj(List pdsj) {
        this.pdsj = pdsj;
    }

    public List getJdsj() {
        return jdsj;
    }

    public void setJdsj(List jdsj) {
        this.jdsj = jdsj;
    }

    public String getXzqhdm() {
        return xzqhdm;
    }

    public void setXzqhdm(String xzqhdm) {
        this.xzqhdm = xzqhdm;
    }

    public String getCompanyId() {
        return companyId;
    }

    public void setCompanyId(String companyId) {
        this.companyId = companyId;
    }

    public Integer getFdRatio() {
        return fdRatio;
    }

    public void setFdRatio(Integer fdRatio) {
        this.fdRatio = fdRatio;
    }

    public Integer getGdRatio() {
        return gdRatio;
    }

    public void setGdRatio(Integer gdRatio) {
        this.gdRatio = gdRatio;
    }

    public Integer getPdRatio() {
        return pdRatio;
    }

    public void setPdRatio(Integer pdRatio) {
        this.pdRatio = pdRatio;
    }

    public Integer getJdRatio() {
        return jdRatio;
    }

    public void setJdRatio(Integer jdRatio) {
        this.jdRatio = jdRatio;
    }

    public Double getUnitLoadIndex() {
        return unitLoadIndex;
    }

    public void setUnitLoadIndex(Double unitLoadIndex) {
        this.unitLoadIndex = unitLoadIndex;
    }

    public Double getStandardHeatLoad() {
        return standardHeatLoad;
    }

    public void setStandardHeatLoad(Double standardHeatLoad) {
        this.standardHeatLoad = standardHeatLoad;
    }

    public Double getSysHeatLoad() {
        return sysHeatLoad;
    }

    public void setSysHeatLoad(Double sysHeatLoad) {
        this.sysHeatLoad = sysHeatLoad;
    }

    public Integer getTowerNum() {
        return towerNum;
    }

    public void setTowerNum(Integer towerNum) {
        this.towerNum = towerNum;
    }

    public Double getTotalPrice() {
        return totalPrice;
    }

    public void setTotalPrice(Double totalPrice) {
        this.totalPrice = totalPrice;
    }

    public Double getFlow() {
        return flow;
    }

    public void setFlow(Double flow) {
        this.flow = flow;
    }

    public String getPipeDiameter() {
        return pipeDiameter;
    }

    public void setPipeDiameter(String pipeDiameter) {
        this.pipeDiameter = pipeDiameter;
    }

    public Double getLift() {
        return lift;
    }

    public void setLift(Double lift) {
        this.lift = lift;
    }

    public Double getActualPower() {
        return actualPower;
    }

    public void setActualPower(Double actualPower) {
        this.actualPower = actualPower;
    }

    public Double getHeatPower() {
        return heatPower;
    }

    public void setHeatPower(Double heatPower) {
        this.heatPower = heatPower;
    }

    public Double getElectricPower() {
        return electricPower;
    }

    public void setElectricPower(Double electricPower) {
        this.electricPower = electricPower;
    }

    public Double getProjectedIncome() {
        return projectedIncome;
    }

    public void setProjectedIncome(Double projectedIncome) {
        this.projectedIncome = projectedIncome;
    }

    public Double getEstimatedSpending() {
        return estimatedSpending;
    }

    public void setEstimatedSpending(Double estimatedSpending) {
        this.estimatedSpending = estimatedSpending;
    }

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getHeatPumpManufacturers() {
        return heatPumpManufacturers;
    }

    public void setHeatPumpManufacturers(String heatPumpManufacturers) {
        this.heatPumpManufacturers = heatPumpManufacturers;
    }

    public String getFdsjStr() {
        return fdsjStr;
    }

    public void setFdsjStr(String fdsjStr) {
        this.fdsjStr = fdsjStr;
        this.fdsj = Arrays.asList(fdsjStr.replace("[", "").replace("]","").split(",").clone());
    }

    public String getGdsjStr() {
        return gdsjStr;
    }

    public void setGdsjStr(String gdsjStr) {
        this.gdsjStr = gdsjStr;
        this.gdsj = Arrays.asList(gdsjStr.replace("[", "").replace("]","").split(",").clone());
    }

    public String getPdsjStr() {
        return pdsjStr;
    }

    public void setPdsjStr(String pdsjStr) {
        this.pdsjStr = pdsjStr;
        this.pdsj = Arrays.asList(pdsjStr.replace("[", "").replace("]","").split(",").clone());
    }

    public String getJdsjStr() {
        return jdsjStr;
    }

    public void setJdsjStr(String jdsjStr) {
        this.jdsjStr = jdsjStr;
        this.jdsj = Arrays.asList(jdsjStr.replace("[", "").replace("]","").split(",").clone());
    }
}
